Temporal.PlainDateTime
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Das Temporal.PlainDateTime
-Objekt repräsentiert ein Datum (Kalenderdatum) und eine Zeit (Uhrzeit) ohne eine Zeitzone. Es wird grundsätzlich als Kombination aus einem date (mit einem zugehörigen Kalendersystem) und einer time dargestellt.
Beschreibung
Ein PlainDateTime
ist im Wesentlichen die Kombination aus einem Temporal.PlainDate
und einem Temporal.PlainTime
. Da Datum und Zeit nicht viel interagieren, sind alle allgemeinen Informationen zu Datumsattributen im PlainDate
-Objekt dokumentiert und alle allgemeinen Informationen zu Zeitattributen im PlainTime
-Objekt.
Wenn das Datumszeitpunkt einen bestimmten Moment darstellt, der über Zeitzonen hinweg konstant bleiben soll, sollten Sie das Temporal.ZonedDateTime
-Objekt anstelle dessen verwenden. Verwenden Sie PlainDateTime
, wenn Sie ein Ereignis darstellen müssen, das zu einem bestimmten Zeitpunkt nach der Uhrzeit stattfindet, der in verschiedenen Zeitzonen ein unterschiedlicher Moment sein kann.
RFC 9557 Format
PlainDateTime
-Objekte können unter Verwendung des RFC 9557-Formats, einer Erweiterung des ISO 8601 / RFC 3339-Formats, serialisiert und geparst werden. Der String hat folgende Form (Leerzeichen sind nur zur Lesbarkeit und sollten im tatsächlichen String nicht vorhanden sein):
YYYY-MM-DD T HH:mm:ss.sssssssss [u-ca=calendar_id]
YYYY
-
Entweder eine vierstellige Zahl oder eine sechsstellige Zahl mit einem
+
oder-
Zeichen. MM
-
Eine zweistellige Zahl von
01
bis12
. DD
-
Eine zweistellige Zahl von
01
bis31
. DieYYYY
,MM
undDD
Komponenten können durch-
oder nichts getrennt sein. T
Optional-
Der Datumszeitpunkt-Trenner, der entweder
T
,t
oder ein Leerzeichen sein kann. Vorhanden, wenn und nur wennHH
vorhanden ist. HH
Optional-
Eine zweistellige Zahl von
00
bis23
. Standardwert ist00
. mm
Optional-
Eine zweistellige Zahl von
00
bis59
. Standardwert ist00
. ss.sssssssss
Optional-
Eine zweistellige Zahl von
00
bis59
. Kann optional gefolgt sein von einem.
oder,
und einer bis neun Ziffern. Standardwert ist00
. DieHH
,mm
undss
Komponenten können durch:
oder nichts getrennt sein. Sie können entweder nurss
oder sowohlss
als auchmm
weglassen, sodass die Zeit eine der drei Formen annehmen kann:HH
,HH:mm
oderHH:mm:ss.sssssssss
. [u-ca=calendar_id]
Optional-
Ersetzen Sie
calendar_id
durch den zu verwendenden Kalender. SieheIntl.supportedValuesOf()
für eine Liste der allgemein unterstützten Kalendertypen. Der Standardwert ist[u-ca=iso8601]
. Kann ein kritisches Flag durch Voranstellen des Schlüssels mit!
haben: z. B.[!u-ca=iso8601]
. Dieses Flag teilt anderen Systemen normalerweise mit, dass es nicht ignoriert werden kann, wenn sie es nicht unterstützen. DerTemporal
-Parser wird einen Fehler werfen, wenn die Anmerkungen zwei oder mehr Kalenderanmerkungen enthalten und eine davon kritisch ist. Beachten Sie, dass dasYYYY-MM-DD
immer als ISO 8601 Kalenderdatum interpretiert und dann in den angegebenen Kalender umgewandelt wird.
Als Eingabe können Sie optional den Offset und den Zeitzonen-Identifikator im selben Format wie ZonedDateTime
einbeziehen, aber sie werden ignoriert. Beachten Sie, dass der Offset nicht Z
sein darf. Andere Anmerkungen im [key=value]
Format werden ebenfalls ignoriert, und sie dürfen kein kritisches Flag haben.
Beim Serialisieren können Sie die Bruchteile der Sekunde, ob die Kalender-ID angezeigt wird und ob ein kritisches Flag hinzugefügt wird, konfigurieren.
Konstruktor
Temporal.PlainDateTime()
Experimentell-
Erstellt ein neues
Temporal.PlainDateTime
-Objekt durch direkte Angabe der zugrunde liegenden Daten.
Statische Methoden
Temporal.PlainDateTime.compare()
Experimentell-
Gibt eine Zahl (-1, 0 oder 1) zurück, die angibt, ob das erste Datumszeitpunkt vor dem zweiten liegt, mit ihm gleich ist oder nach ihm kommt. Entspricht zuerst einem Vergleich ihrer Daten, dann einem Vergleich ihrer Zeiten, falls die Daten gleich sind.
Temporal.PlainDateTime.from()
Experimentell-
Erstellt ein neues
Temporal.PlainDateTime
-Objekt aus einem anderenTemporal.PlainDateTime
-Objekt, einem Objekt mit Datums- und Zeiteigenschaften oder einem RFC 9557-String.
Instanzeigenschaften
Diese Eigenschaften sind auf Temporal.PlainDateTime.prototype
definiert und werden von allen Temporal.PlainDateTime
-Instanzen geteilt.
Temporal.PlainDateTime.prototype.calendarId
Experimentell-
Gibt einen String zurück, der den Kalender repräsentiert, der verwendet wird, um das interne ISO 8601-Datum zu interpretieren.
Temporal.PlainDateTime.prototype.constructor
-
Die Konstrukturfunktion, die das Instanzobjekt erstellt hat. Für
Temporal.PlainDateTime
-Instanzen ist der Anfangswert derTemporal.PlainDateTime()
-Konstruktor. Temporal.PlainDateTime.prototype.day
Experimentell-
Gibt eine positive Ganzzahl zurück, die den auf 1 basierenden Tagesindex im Monat dieses Datums darstellt, der derselbe Tageszahl ist, die auf einem Kalender zu sehen wäre. Kalender-abhängig. Beginnt im Allgemeinen bei 1 und ist kontinuierlich, aber nicht immer.
Temporal.PlainDateTime.prototype.dayOfWeek
Experimentell-
Gibt eine positive Ganzzahl zurück, die den auf 1 basierten Tagesindex in der Woche dieses Datums darstellt. Tage in einer Woche sind fortlaufend nummeriert von
1
bisdaysInWeek
, wobei jede Zahl ihrem Namen entspricht. Kalender-abhängig. 1 steht im Kalender normalerweise für Montag, auch wenn in der durch den Kalender verwendeten Lokale ein anderer Tag als erster Wochentag betrachtet wird (sieheIntl.Locale.prototype.getWeekInfo()
). Temporal.PlainDateTime.prototype.dayOfYear
Experimentell-
Gibt eine positive Ganzzahl zurück, die den auf 1 basierten Tagesindex im Jahr dieses Datums darstellt. Der erste Tag dieses Jahres ist
1
und der letzte Tag ist derdaysInYear
. Kalender-abhängig. Temporal.PlainDateTime.prototype.daysInMonth
Experimentell-
Gibt eine positive Ganzzahl zurück, die die Anzahl der Tage im Monat dieses Datums darstellt. Kalender-abhängig.
Temporal.PlainDateTime.prototype.daysInWeek
Experimentell-
Gibt eine positive Ganzzahl zurück, die die Anzahl der Tage in der Woche dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601-Kalender sind das immer 7, aber in anderen Kalendersystemen kann das von Woche zu Woche variieren.
Temporal.PlainDateTime.prototype.daysInYear
Experimentell-
Gibt eine positive Ganzzahl zurück, die die Anzahl der Tage im Jahr dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601-Kalender sind das 365, oder 366 in einem Schaltjahr.
Temporal.PlainDateTime.prototype.era
Experimentell-
Gibt einen kalender-spezifischen Kleinbuchstaben-String zurück, der die Ära dieses Datums darstellt, oder
undefined
, wenn der Kalender keine Äras verwendet (z.B. ISO 8601).era
underaYear
zusammen identifizieren ein Jahr in einem Kalender eindeutig, ähnlich wieyear
. Kalender-abhängig. Für den Gregorianischen Kalender ist es entweder"gregory"
oder"gregory-inverse"
. Temporal.PlainDateTime.prototype.eraYear
Experimentell-
Gibt eine nicht-negative Ganzzahl zurück, die das Jahr dieses Datums innerhalb der Ära darstellt, oder
undefined
, wenn der Kalender keine Äras verwendet (z.B. ISO 8601). Der Jahrindex beginnt üblicherweise bei 1 (häufiger) oder 0, und Jahre in einer Ära können mit der Zeit abnehmen (z.B. Gregorianisch v. Chr.).era
underaYear
zusammen identifizieren ein Jahr in einem Kalender eindeutig, ähnlich wieyear
. Kalender-abhängig. Temporal.PlainDateTime.prototype.hour
Experimentell-
Gibt eine Ganzzahl von 0 bis 23 zurück, die die Stundenkomponente dieser Zeit darstellt.
Temporal.PlainDateTime.prototype.inLeapYear
Experimentell-
Gibt einen booleschen Wert zurück, der angibt, ob dieses Datum in einem Schaltjahr liegt. Ein Schaltjahr ist ein Jahr, das mehr Tage hat (aufgrund eines Schalttages oder Schaltmonats) als ein gewöhnliches Jahr. Kalender-abhängig.
Temporal.PlainDateTime.prototype.microsecond
Experimentell-
Gibt eine Ganzzahl von 0 bis 999 zurück, die die Mikrosekundenkomponente (10-6 Sekunden) dieser Zeit darstellt.
Temporal.PlainDateTime.prototype.millisecond
Experimentell-
Gibt eine Ganzzahl von 0 bis 999 zurück, die die Millisekundenkomponente (10-3 Sekunden) dieser Zeit darstellt.
Temporal.PlainDateTime.prototype.minute
Experimentell-
Gibt eine Ganzzahl von 0 bis 59 zurück, die die Minutenkomponente dieser Zeit darstellt.
Temporal.PlainDateTime.prototype.month
Experimentell-
Gibt eine positive Ganzzahl zurück, die den auf 1 basierenden Monatsindex im Jahr dieses Datums darstellt. Der erste Monat dieses Jahres ist
1
, und der letzte Monat ist dermonthsInYear
. Kalender-abhängig. Beachten Sie, dass im Gegensatz zuDate.prototype.getMonth()
der Index auf 1 basiert. Wenn der Kalender Schaltmonate hat, dann kann der Monat mit dem gleichenmonthCode
verschiedenemonth
-Indizes für verschiedene Jahre haben. Temporal.PlainDateTime.prototype.monthCode
Experimentell-
Gibt einen kalender-spezifischen String zurück, der den Monat dieses Datums darstellt. Kalender-abhängig. Normalerweise ist es
M
plus einer zweistelligen Monatsnummer. Für Schaltmonate ist es der Code des vorherigen Monats gefolgt vonL
. Wenn der Schaltmonat der erste Monat des Jahres ist, lautet der CodeM00L
. Temporal.PlainDateTime.prototype.monthsInYear
Experimentell-
Gibt eine positive Ganzzahl zurück, die die Anzahl der Monate im Jahr dieses Datums darstellt. Kalender-abhängig. Für den ISO 8601-Kalender sind das immer 12, aber in anderen Kalendersystemen kann das variieren.
Temporal.PlainDateTime.prototype.nanosecond
Experimentell-
Gibt eine Ganzzahl von 0 bis 999 zurück, die die Nanosekundenkomponente (10-9 Sekunden) dieser Zeit darstellt.
Temporal.PlainDateTime.prototype.second
Experimentell-
Gibt eine Ganzzahl von 0 bis 59 zurück, die die Sekundenkomponente dieser Zeit darstellt.
Temporal.PlainDateTime.prototype.weekOfYear
Experimentell-
Gibt eine positive Ganzzahl zurück, die den auf 1 basierten Wochenindex im
yearOfWeek
dieses Datums darstellt, oderundefined
, wenn der Kalender kein klar definiertes Wochensystem hat. Die erste Woche des Jahres ist1
. Kalender-abhängig. Beachten Sie, dass für ISO 8601 die ersten und letzten Tage des Jahres der letzten Woche des Vorjahres oder der ersten Woche des folgenden Jahres zugerechnet werden können. Temporal.PlainDateTime.prototype.year
Experimentell-
Gibt eine Ganzzahl zurück, die die Anzahl der Jahre dieses Datums relativ zum Beginn eines kalender-spezifischen Epochejahres darstellt. Kalender-abhängig. Üblicherweise ist das Jahr 1 entweder das erste Jahr der jüngsten Ära oder das ISO 8601-Jahr
0001
. Wenn die Epoche in der Jahresmitte liegt, hat dieses Jahr vor und nach dem Beginn der Epoche denselben Wert. Temporal.PlainDateTime.prototype.yearOfWeek
Experimentell-
Gibt eine Ganzzahl zurück, die das Jahr darstellt, das mit der
weekOfYear
dieses Datums gepaart werden soll, oderundefined
, wenn der Kalender kein klar definiertes Wochensystem hat. Kalender-abhängig. Normalerweise ist dies das Jahr des Datums, aber für ISO 8601 können die ersten und letzten Tage des Jahres der letzten Woche des Vorjahres oder der ersten Woche des folgenden Jahres zugerechnet werden, was dazu führt, dassyearOfWeek
um 1 abweicht. Temporal.PlainDateTime.prototype[Symbol.toStringTag]
-
Der Anfangswert der
[Symbol.toStringTag]
-Eigenschaft ist der String"Temporal.PlainDateTime"
. Diese Eigenschaft wird inObject.prototype.toString()
verwendet.
Instanzmethoden
Temporal.PlainDateTime.prototype.add()
Experimentell-
Gibt ein neues
Temporal.PlainDateTime
-Objekt zurück, das dieses Datumszeitpunkt um die angegebene Dauer vorwärts verschoben darstellt (in einer Form, die durchTemporal.Duration.from()
konvertierbar ist). Temporal.PlainDateTime.prototype.equals()
Experimentell-
Gibt
true
zurück, wenn dieses Datumszeitpunkt im Wert einem anderen Datumszeitpunkt (in einer Form, die durchTemporal.PlainDateTime.from()
konvertierbar ist) entspricht, undfalse
ansonsten. Sie werden sowohl anhand ihrer Datums- als auch Zeitwerte und ihrer Kalender verglichen, sodass zwei Datumszeitpunkte aus verschiedenen Kalendern vonTemporal.PlainDateTime.compare()
als gleich betrachtet werden können, aber nicht vonequals()
. Temporal.PlainDateTime.prototype.round()
Experimentell-
Gibt ein neues
Temporal.PlainDateTime
-Objekt zurück, das dieses Datumszeitpunkt auf die angegebene Einheit gerundet darstellt. Temporal.PlainDateTime.prototype.since()
Experimentell-
Gibt ein neues
Temporal.Duration
-Objekt zurück, das die Dauer von einem anderen Datumszeitpunkt (in einer Form, die durchTemporal.PlainDateTime.from()
konvertierbar ist) bis zu diesem Datumszeitpunkt darstellt. Die Dauer ist positiv, wenn der andere Datumszeitpunkt vor diesem liegt, und negativ, wenn danach. Temporal.PlainDateTime.prototype.subtract()
Experimentell-
Gibt ein neues
Temporal.PlainDateTime
-Objekt zurück, das dieses Datumszeitpunkt um die angegebene Dauer rückwärts verschoben darstellt (in einer Form, die durchTemporal.Duration.from()
konvertierbar ist). Temporal.PlainDateTime.prototype.toJSON()
Experimentell-
Gibt einen String zurück, der dieses Datumszeitpunkt im selben RFC 9557 Format darstellt, wie beim Aufruf von
toString()
. Soll implizit vonJSON.stringify()
aufgerufen werden. Temporal.PlainDateTime.prototype.toLocaleString()
Experimentell-
Gibt einen String mit einer sprachabhängigen Darstellung dieses Datumszeitpunktes zurück.
Temporal.PlainDateTime.prototype.toPlainDate()
Experimentell-
Gibt ein neues
Temporal.PlainDate
-Objekt zurück, das den Datumsanteil (Jahr, Monat, Tag) dieses Datumszeitpunktes im selben Kalendersystem darstellt. Temporal.PlainDateTime.prototype.toPlainTime()
Experimentell-
Gibt ein neues
Temporal.PlainTime
-Objekt zurück, das den Zeitanteil (Stunde, Minute, Sekunde und Untersekundenkomponenten) dieses Datumszeitpunktes darstellt. Temporal.PlainDateTime.prototype.toString()
Experimentell-
Gibt einen String zurück, der dieses Datumszeitpunkt im RFC 9557 Format darstellt.
Temporal.PlainDateTime.prototype.toZonedDateTime()
Experimentell-
Gibt eine neue
Temporal.ZonedDateTime
-Instanz zurück, die dasselbe Datumszeitpunkt wie dieses einfache Datumszeitpunkt darstellt, jedoch in der angegebenen Zeitzone. Temporal.PlainDateTime.prototype.until()
Experimentell-
Gibt ein neues
Temporal.Duration
-Objekt zurück, das die Dauer von diesem Datumszeitpunkt zu einem anderen Datumszeitpunkt (in einer Form konvertierbar durchTemporal.PlainDateTime.from()
) darstellt. Die Dauer ist positiv, wenn der andere Datumszeitpunkt nach diesem liegt, und negativ, wenn davor. Temporal.PlainDateTime.prototype.valueOf()
Experimentell-
Wirft einen
TypeError
, der verhindert, dassTemporal.PlainDateTime
-Instanzen implizit in primitive Werte konvertiert werden, wenn sie in arithmetischen oder Vergleichsoperationen verwendet werden. Temporal.PlainDateTime.prototype.with()
Experimentell-
Gibt ein neues
Temporal.PlainDateTime
-Objekt zurück, das dieses Datumszeitpunkt mit einigen Feldern darstellt, die durch neue Werte ersetzt wurden. Temporal.PlainDateTime.prototype.withCalendar()
Experimentell-
Gibt ein neues
Temporal.PlainDateTime
-Objekt zurück, das dieses Datumszeitpunkt im neuen Kalendersystem interpretiert darstellt. Temporal.PlainDateTime.prototype.withPlainTime()
Experimentell-
Gibt ein neues
Temporal.PlainDateTime
-Objekt zurück, das dieses Datumszeitpunkt mit dem Zeitanteil vollständig ersetzt durch die neue Zeit darstellt (in einer Form, die durchTemporal.PlainTime.from()
konvertierbar ist).
Spezifikationen
Specification |
---|
Temporal # sec-temporal-plaindatetime-objects |